#include "joueur.h"

//get
int Joueur::getFer()
{
    return fer_;
}

int Joueur::getGold()
{
    return gold_;
}

int Joueur::getGardes()
{
    return gardes_;
}

int Joueur::getScore()
{
    return score_;
}

int Joueur::getId()
{
    return id_;
}
int Joueur::getPrises(){
    return villesprises;
}

//set
void Joueur::setFer()
{
    int i, c=0;
    for(i=0;i<v.size();i++){
        if(v.value(i)->getType()==1){
            c++;
        }
    }    
    fer_+=c;
    data_->setDonnees(gold_, fer_, gardes_, score_);
}

void Joueur::setGold(int b)
{
    int c=0;
    if(b==0){
        for(int i=0;i<v.size();i++){
            if(v.value(i)->getType()==0){
                c++;
            }
        }        
        gold_+=c;
    }
    else{
        gold_=gold_+b;
    }
    data_->setDonnees(gold_, fer_, gardes_, score_);
}


void Joueur::setGardes(int ferDepense)
{
    int sold=0;
    if(ferDepense==0)
    {
        for(int i=0;i<v.size();i++){
            sold+=v.value(i)->getUnites();
        }
        gardes_=sold;
    }
    else
    {
        gardes_+=ferDepense;
        fer_-=ferDepense;
    }
    data_->setDonnees(gold_, fer_, gardes_, score_);
}

void Joueur::setScore()
{
    score_++;
    data_->setDonnees(gold_, fer_, gardes_, score_);
}

void Joueur::setId(int id)
{
    id_=id;
}

void Joueur::setVillesEnnemis(){
    villesprises++;
    if(villesprises%2==0){
        setScore();
    }
}

void Joueur::setVillesTotal(){
    if(v.size()==nbLim){
        nbLim+=4;
        setScore();
    }

}


void Joueur::setJoueur(Joueur *A){
    gold_=A->getGold();
    id_=A->getId();
    fer_=A->getFer();
    gardes_=A->getGardes();
    score_=A->getScore();
    data_=A->data_;
    aff1_=A->aff1_;
    aff2_=A->aff2_;
    v=A->v;
    actionPrecedente=A->actionPrecedente;
}
